First-class Object
別名: 第一級オブジェクト
一般的に以下の性質を満たすオブジェクトを指す。
関数の引数として渡せる
関数の戻り値として返せる
変数に代入できる
もともとは1960年代にChristopher Stracheyによって導入された概念で、明確な定義はない。
特に関数がFirst-class ObjectであるならFirst-class Functionと呼ばれる。
関数が他の変数と同様の扱いができる。
関数がFirst-classである言語の例: Python
関数がFirst-classでない言語の例: C/C++